JavaScript: The Good Parts: The Good Parts
4/5
()
Currently unavailable
Currently unavailable
About this ebook
Most programming languages contain good and bad parts, but JavaScript has more than its share of the bad, having been developed and released in a hurry before it could be refined. This authoritative book scrapes away these bad features to reveal a subset of JavaScript that's more reliable, readable, and maintainable than the language as a whole—a subset you can use to create truly extensible and efficient code.
Considered the JavaScript expert by many people in the development community, author Douglas Crockford identifies the abundance of good ideas that make JavaScript an outstanding object-oriented programming language-ideas such as functions, loose typing, dynamic objects, and an expressive object literal notation. Unfortunately, these good ideas are mixed in with bad and downright awful ideas, like a programming model based on global variables.
When Java applets failed, JavaScript became the language of the Web by default, making its popularity almost completely independent of its qualities as a programming language. In JavaScript: The Good Parts, Crockford finally digs through the steaming pile of good intentions and blunders to give you a detailed look at all the genuinely elegant parts of JavaScript, including:
- Syntax
- Objects
- Functions
- Inheritance
- Arrays
- Regular expressions
- Methods
- Style
- Beautiful features
The real beauty? As you move ahead with the subset of JavaScript that this book presents, you'll also sidestep the need to unlearn all the bad parts. Of course, if you want to find out more about the bad parts and how to use them badly, simply consult any other JavaScript book.
With JavaScript: The Good Parts, you'll discover a beautiful, elegant, lightweight and highly expressive language that lets you create effective code, whether you're managing object libraries or just trying to get Ajax to run fast. If you develop sites or applications for the Web, this book is an absolute must.
Douglas Crockford
Douglas Crockford is a Senior JavaScript Architect at Yahoo!, well known for introducing and maintaining the JSON (JavaScript Object Notation) format. He's a regular speaker at conferences on advanced JavaScript topics, and serves on the ECMAScript committee.
Related to JavaScript
Related ebooks
J2EE Open Source Toolkit: Building an Enterprise Platform with Open Source Tools (Java Open Source Library) Rating: 0 out of 5 stars0 ratingsYou Can Program in C++: A Programmer's Introduction Rating: 0 out of 5 stars0 ratingsExcel VBA Macro Programming Rating: 0 out of 5 stars0 ratingsAnnotated C# Standard Rating: 0 out of 5 stars0 ratingsData Mining with SQL Server 2005 Rating: 0 out of 5 stars0 ratingsEmbedded System Design on a Shoestring: Achieving High Performance with a Limited Budget Rating: 4 out of 5 stars4/5Service-Oriented Computing: Semantics, Processes, Agents Rating: 3 out of 5 stars3/5Programming FPGAs: Getting Started with Verilog Rating: 4 out of 5 stars4/5C++ Demystified Rating: 3 out of 5 stars3/5Kernel Methods for Remote Sensing Data Analysis Rating: 5 out of 5 stars5/5PHP Programming Solutions Rating: 0 out of 5 stars0 ratingsXML for Data Architects: Designing for Reuse and Integration Rating: 5 out of 5 stars5/5Visual Basic Design Patterns Rating: 0 out of 5 stars0 ratingsPatterns, Predictions, and Actions: Foundations of Machine Learning Rating: 0 out of 5 stars0 ratingsProgramming the Photon: Getting Started with the Internet of Things Rating: 5 out of 5 stars5/5Programming the Intel Galileo: Getting Started with the Arduino -Compatible Development Board Rating: 5 out of 5 stars5/5Microsoft SQL Server 2005: A Beginner''s Guide Rating: 0 out of 5 stars0 ratingsComputer Programming Languages in Practice: Made Simple Computerbooks Rating: 5 out of 5 stars5/5Network Congestion Control: Managing Internet Traffic Rating: 0 out of 5 stars0 ratingsJava 2 Micro Edition: Professional Developer's Guide Rating: 4 out of 5 stars4/5Semantics in Business Systems: The Savvy Manager's Guide Rating: 3 out of 5 stars3/5UML Demystified Rating: 0 out of 5 stars0 ratingsThe Art and Science of Digital Compositing Rating: 0 out of 5 stars0 ratingsParallel Computing Rating: 0 out of 5 stars0 ratingsDevelopment Research in Practice: The DIME Analytics Data Handbook Rating: 0 out of 5 stars0 ratingsMigrating to the Cloud: Oracle Client/Server Modernization Rating: 0 out of 5 stars0 ratingsLarge Problems, Small Machines: Transforming Your Programs with Advanced Algorithms Rating: 3 out of 5 stars3/5Calculus DeMYSTiFieD, Second Edition Rating: 3 out of 5 stars3/5PIC Microcontroller Projects in C: Basic to Advanced Rating: 5 out of 5 stars5/5
Software Development & Engineering For You
Level Up! The Guide to Great Video Game Design Rating: 4 out of 5 stars4/5Python For Dummies Rating: 4 out of 5 stars4/5How to Write Effective Emails at Work Rating: 4 out of 5 stars4/5Hand Lettering on the iPad with Procreate: Ideas and Lessons for Modern and Vintage Lettering Rating: 4 out of 5 stars4/5Adobe Illustrator CC For Dummies Rating: 5 out of 5 stars5/5Coding All-in-One For Dummies Rating: 0 out of 5 stars0 ratingsGrokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/527 PROGRAM MANAGEMENT INTERVIEW TECHNIQUES - To Ace That Dream Job Offer ! Rating: 5 out of 5 stars5/5Modern C++ for Absolute Beginners: A Friendly Introduction to C++ Programming Language and C++11 to C++20 Standards Rating: 0 out of 5 stars0 ratingsHow Do I Do That In InDesign? Rating: 5 out of 5 stars5/5Learn to Code. Get a Job. The Ultimate Guide to Learning and Getting Hired as a Developer. Rating: 5 out of 5 stars5/5Kanban in Action Rating: 0 out of 5 stars0 ratingsPYTHON: Practical Python Programming For Beginners & Experts With Hands-on Project Rating: 5 out of 5 stars5/5Ry's Git Tutorial Rating: 0 out of 5 stars0 ratingsLua Game Development Cookbook Rating: 0 out of 5 stars0 ratingsReversing: Secrets of Reverse Engineering Rating: 4 out of 5 stars4/5Good Code, Bad Code: Think like a software engineer Rating: 5 out of 5 stars5/5Engineering Management for the Rest of Us Rating: 5 out of 5 stars5/5Tiny Python Projects: Learn coding and testing with puzzles and games Rating: 5 out of 5 stars5/5OneNote: The Ultimate Guide on How to Use Microsoft OneNote for Getting Things Done Rating: 1 out of 5 stars1/5C# in Depth Rating: 5 out of 5 stars5/5Data Visualization: a successful design process Rating: 4 out of 5 stars4/5Android App Development For Dummies Rating: 0 out of 5 stars0 ratingsLearning Java by Building Android Games Rating: 0 out of 5 stars0 ratingsBeginning Programming For Dummies Rating: 4 out of 5 stars4/5Salesforce Certification: Earn Salesforce certifications and increase online sales real and unique practice tests included Kindle Rating: 0 out of 5 stars0 ratings
Reviews for JavaScript
173 ratings9 reviews
- Rating: 4 out of 5 stars4/5Crockford, the irreverent guru, takes us on a whirlwind tour de force through the parts of JavaScript that matter. Condensed and pithy, this is a must-read guidebook for even seasoned web devs. Finally. I understand closures. Finally.
- Rating: 3 out of 5 stars3/5some of the topics touched by this book are very important but it's a pity that at times the narration is very very dry, it becomes like a conversation between the author and a reader that needs to know a priori what the author is going to point or at least have a feeling about it. Examples are not enough and they are outside of a context or story so it's fairly difficult to get the whole picture unless you let yourself drive by an illusion of knowledge. Maybe a design patterns approach, at least for some topics, showing alternatives and forces and contexts, would have helped. But is also true that the book would have been much much bigger and maybe too expensive.For example if you want to learn about closures, callbacks and other patterns in practice, there are better resouces, for example Stoyan Stefanov books. Of course this book has the merit to be one of the first to focus on design issues and reading it will not be bad anyway.And the book is designed to cover only the ECMA specification, not the various practical uses of the language in contexts like browsers, scripting engines, etc. So, concluding, this book shall be good for Javascript experts that are just looking for a formalization of important core language best practices or for those that have followed for long time the wrong directions (as the author says too many wrong books have been written on javascript) and want to steer in the right way, knowing that maybe they will also need to look for other resources. But is not the best for the wider audience of programmers that want to learn Javascript the right way and in its most practical applications.
- Rating: 5 out of 5 stars5/5Very concise and on-point description of the core Javascript language. At times I found it a bit too terse though and had to use the Internet for help.
- Rating: 3 out of 5 stars3/5I was never going to be thrilled with this book because ugh, javascript.
But I was expecting more than a typical 2-star throwaway tech book. It was hard to get past the inconsistency (globals variables are bad, let's tack new methods onto global prototype objects!), bad editing, and repetition (I think one code snippet was repeated a total of 3 times).
A lot of people seem to like this book. If the idea of subsetting a language to produce a better variant is new to you, or if you've been stuck in the javascript salt mines, without noticing the river Lisp curving its way through them, or perhaps if protypical inheritance is a new concept for you, I can see how it could be a breath of fresh air. None of that holds for me, so it wasn't. The javascript subset he comes up with seems rather clumsy, and verbose, and easy to get wrong -- not very compelling.
Also, I disliked the railroad diagrams. In most cases a short English description would have been easier to understand, or a BNF would have been easier to read and equally precise. Many of the diagrams seemed gratuitous. They may read better on paper than on a screen. I read it in epub format, which also suffered from an unclosed italics tag messing up a chapter.
The parts I did like: The evidence of a keen mind on the other end of the book, and occasional flashes of insight. The clearest descripton of the "this" scoping mess that I've seen. Good descriptions of many of the stupid gotchas in the language, including the craziness that are javascript arrays.
If it had been called "Javascript: The Bad Parts (and a not very compelling attempt to work around them)" I'd probably feel like I got my money's worth. - Rating: 4 out of 5 stars4/5Javascript is a beautiful language with some pitfalls. This book provides a thorough introduction to its flaws and how to avoid them.The book is terse in some places -- for example, I wish Crockford had justified his distaste for the "continue" statement -- and somewhat repetitive in others, yet the book is a great way to gain insight into the flow of the language.A lot of what is great about modern Javascript, from "use strict" to CoffeeScript to various linters, derives from Crockford's criticism.
- Rating: 4 out of 5 stars4/5This along with JavaScript: The Definitive Guide are the two must read books for any JS programmers out there. Crockford lays out in very clear terms what's good (and bad) about JS in it's current form. His guidelines for how to use it effectively seem very solid based on my experiences.It helps that you can easily read through the majority of this book in a couple hours. But it's also one to keep around and flip through every so often when you need a refresher.
- Rating: 4 out of 5 stars4/5An essential reference by Douglas Crockford, the programmer who has worked to popularise both the JSON data format and the JavaScript language. With that kind of background Crockford has become an authoritative voice on "the good parts" of the specification and his writing delivers on the promise of providing a programmer with exactly what he needs to know about JavaScript, which has rapidly become the lingua franca of the Web. This book is a handy desk reference at work, if you're still accustomed to dead tree manuals.
- Rating: 5 out of 5 stars5/5A must read for any programmer using JavaScript.
- Rating: 4 out of 5 stars4/5I'd been meaning to read this for years and finally picked up a copy in late 2019, 11 years after it came out. I'd picked up some JavaScript here and there and have been using JSON since it exploded in popularity. Earlier this year I worked through a book on D3, so I had a decent amount of exposure, but there were still some quirks I didn't have my head around. This very readable book really clarified things, especially about prototypal inheritance and the unfortunate non-block scoping rules. The "good parts" can be summed up as the "functional parts." There are some great code examples of how to use closures and how to build programs using function expressions. I'm a little leery of some of his suggestions, e.g., in Chapter 4 where Function is augmented to obviate the need to type .prototype, if only because I don't know enough about common practice if this advice is generally followed.